css样式中的百分比都是相对于谁的?
width、height(正常定位)
width 和 height 的百分比是分别根据父级元素块的宽度和高度来计算的。
相对定位的 top、left
- position: relative;
- top: 100%;
- left: 100%;
top 和 left 的百分比是分别根据父级元素块的高度和宽度来计算的。
绝对定位的 top、left、width、height
- position: absolute;
- top: 50%;
- left: 50%;
-
- width: 100%;
- height: 100%;
top、height 和 left、width 的百分比是分别根据包含它的第一个不是 static 定位的元素的高度和宽度来计算的。
固定定位的 top、left
- position: fixed;
- top: 50%;
- left: 50%;
top 和 left 的百分比是分别根据浏览器视口的高度和宽度来计算的。
translate
transform: translate(-50%, -50%);
translate 是根据自身的宽高来计算的。
margin-top, margin-left,padding-top, padding-left
- margin-top: 50%;
- margin-left: 50%;
相对于父级元素块的宽度。
border-radius
border-radius: 50%;
相对于自身。
background-size
background-size: 100% 100%;
相对背景区的宽高。

